The field of the present invention is computer graphics systems and in particular computer graphics systems which use color. With the reduction in the price of dynamic random access memories it has become economical to provide a bit map or pixel map memory for computer graphics systems. In such a bit map or pixel map memory a color code is stored in a memory location corresponding to each pixel to be displayed. A video system is provided which recalls the color codes for each pixel and generates a raster scan video signal corresponding to the recalled color codes. Thus, the data stored in the memory determines the display by determining the color generated for each picture element of the display.
The requirement for a natural looking display and the minimization of required memory are conflicting. In order to have a natural looking display it is necessary to have a large number of available colors. This requires a large number of bits for each pixel in order to specify the particular color from among a large number of possibilities. However, the provision of a large number of bits per pixel requires a large amount of memory for storage. Since a number of bits must be provided for each pixel element in the display, even a modest sized display would require a large memory. Thus it is advantageous to provide some method to reduce the amount of memory needed to store the display while retaining the capability of choosing among a large number of colors.
The provision of a color palette enables a compromise between these conflicting requirements. The color codes stored for each pixel have a limited number of bits, thereby reducing the memory requirements. The color codes are employed to select one of a number of color registers. These color registers each store color data words which are longer than the pixel color codes. The number of such color registers provided in the color palette is equal to the number of selections provided by the pixel color codes.
This technique has advantages and disadvantages. Such a color palette provides a reduced memory requirement by limiting the number of bits in the pixel color codes. Because the color data words stored in the color registers are longer than the pixel color codes, each color data word can select from a larger number of possible colors. This technique thus enables the capability of specifying a color from among a set of colors much larger than can be specified by the pixel color code alone. The disadvantage is that the number of colors that can be specified at any one time is limited by the size of the pixel color code. Because the number of color registers is less than the total number of colors which can be selected by the longer color words, the color palette can select only a subset of the set of colors selectable by the longer color data words. This disadvantage can by partially overcome by enabling the color registers of the color palette to be changed during display. Thus while only a limited number of colors can be displayed at one time, the possible colors can be expanded by loading several alternate selections of color data words within the color registers as required during display.
Due to the advantages of this color palette technique, any improvements in its implementation would be advantageous in computer color graphics systems.